# -*- coding: UTF-8 -*-
"""
@auth:buxiangjie
@date:2023/2/1 11:21
@describe: 
"""
from util.common import FuzzCommon


class Int32EqualsLeftBorder:
	def __str__(self):
		return "模糊规则 -> int32类型等于左边界"

	def __call__(self, *args, **kwargs):
		return FuzzCommon.replace_op(self, -2147483648, *args, **kwargs)


class Int32EqualsRightBorder:
	def __str__(self):
		return "模糊规则 -> int32类型等于右边界"

	def __call__(self, *args, **kwargs):
		return FuzzCommon.replace_op(self, 2147483647, *args, **kwargs)


class Int32BeyondLeftBorder:
	def __str__(self):
		return "模糊规则 -> int32类型超出左边界"

	def __call__(self, *args, **kwargs):
		return FuzzCommon.replace_op(self, -2147483649, *args, **kwargs)


class Int32BeyondRightBorder:
	def __str__(self):
		return "模糊规则 -> int32类型超出右边界"

	def __call__(self, *args, **kwargs):
		return FuzzCommon.replace_op(self, 2147483648, *args, **kwargs)


class Int64EqualsLeftBorder:
	def __str__(self):
		return "模糊规则 -> int64类型等于左边界"

	def __call__(self, *args, **kwargs):
		return FuzzCommon.replace_op(self, -9223372036854775808, *args, **kwargs)


class Int64EqualsRightBorder:
	def __str__(self):
		return "模糊规则 -> int64类型等于右边界"

	def __call__(self, *args, **kwargs):
		return FuzzCommon.replace_op(self, 9223372036854775808, *args, **kwargs)


class Int64BeyondLeftBorder:
	def __str__(self):
		return "模糊规则 -> int64类型超出左边界"

	def __call__(self, *args, **kwargs):
		return FuzzCommon.replace_op(self, -9223372036854775809, *args, **kwargs)


class Int64BeyondRightBorder:
	def __str__(self):
		return "模糊规则 -> int64类型超出右边界"

	def __call__(self, *args, **kwargs):
		return FuzzCommon.replace_op(self, 9223372036854775809, *args, **kwargs)
